package com.gitee.wsl.mathematics.geometry.d2.circle

import com.gitee.wsl.mathematics.geometry.d2.AbstractCloseShape
import com.gitee.wsl.mathematics.geometry.d2.contour.ShapeContour
import com.gitee.wsl.mathematics.vector.vec2.Vec2f
import com.gitee.wsl.unit.angle.AngleUnit

class Wye(
    override val parent: Circle,
    override val outerRadius:Float
) : AbstractCloseShape(proxy = parent.proxy),WyeShape2d<Float,Vec2f>{

    override fun create(p: Vec2f, radius: Float) = Circle(p,radius)

    override fun create(p: Vec2f, radius: Float, outerRadius: Float) = Wye(Circle(p,radius),outerRadius)

    override fun createSegment(
        startAngle: AngleUnit,
        sweepAngle: AngleUnit,
    ) = Slice(parent,startAngle,sweepAngle,outerRadius)

    override val contour: ShapeContour
        get() = TODO("Not yet implemented")
}